package com.ant.storage.pojo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.util.List;

/**
 * 业务出库表
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("business_out")
@ApiModel(value="业务出库对象")
public class BusinessOut {

    @TableId(value = "business_out_id", type = IdType.AUTO)
    private Integer business_out_id;

    @ApiModelProperty(value = "申请时间")
    @TableField("apply_time")
    private String apply_time;

    @ApiModelProperty(value = "业务订单编号")
    @TableField("business_out_order_id")
    private Integer business_out_order_id;

    @ApiModelProperty(value = "城市")
    @TableField("city_id")
    private Integer city_id;

    @ApiModelProperty(value = "部门")
    @TableField("department_id")
    private Integer department_id;

    @ApiModelProperty(value = "调度员")
    @TableField("dispatcher")
    private String dispatcher;

    @ApiModelProperty(value = "领料员")
    @TableField("recipient")
    private String recipient;

    @ApiModelProperty(value = "类型 1为待出库  2为处理中  3为出库完成  4为领料员已确认")
    @TableField("business_out_type")
    private Integer business_out_type;

    @ApiModelProperty(value = "出库时间")
    @TableField("out_warehouse_time")
    private String out_warehouse_time;

    @ApiModelProperty(value = "领料员确认时间")
    @TableField("recipient_confirm_time")
    private String recipient_confirm_time;

    @ApiModelProperty(value = "出库负责人")
    @TableField("warehouse_out_staff")
    private String warehouse_out_staff;

    @TableField(exist = false)
    @ApiModelProperty(value = "开始时间")
    private String start_time;

    @TableField(exist = false)
    @ApiModelProperty(value = "结束时间")
    private String end_time;

    @TableField(exist = false)
    private List<BusinessOutCommodity> businessOutCommoditiesList;

    @TableField(exist = false)
    private City city;

    @TableField(exist = false)
    private City department;
}
